home *** CD-ROM | disk | FTP | other *** search
/ IRIX Base Documentation 2001 May / SGI IRIX Base Documentation 2001 May.iso / usr / share / catman / p_man / cat3 / c++ / cplxerr.z / cplxerr
Encoding:
Text File  |  1998-10-30  |  12.8 KB  |  384 lines

  1.  
  2.  
  3.  
  4. CCCCPPPPLLLLXXXXEEEERRRRRRRR((((3333CCCC++++++++))))                                                    CCCCPPPPLLLLXXXXEEEERRRRRRRR((((3333CCCC++++++++))))
  5.  
  6.  
  7.  
  8. NNNNAAAAMMMMEEEE
  9.      complex_error - error-handling function for the C++ Complex Math Library
  10.  
  11. SSSSYYYYNNNNOOOOPPPPSSSSIIIISSSS
  12.      _####_iiii_nnnn_cccc_llll_uuuu_dddd_eeee _<<<<_cccc_oooo_mmmm_pppp_llll_eeee_xxxx_...._hhhh_>>>>
  13.  
  14.      _cccc_llll_aaaa_ssss_ssss _cccc______eeee_xxxx_cccc_eeee_pppp_tttt_iiii_oooo_nnnn
  15.      _{{{{
  16.                _iiii_nnnn_tttt            _tttt_yyyy_pppp_eeee_;;;;
  17.                _cccc_hhhh_aaaa_rrrr           _****_nnnn_aaaa_mmmm_eeee_;;;;
  18.                _cccc_oooo_mmmm_pppp_llll_eeee_xxxx        _aaaa_rrrr_gggg_1111_;;;;
  19.                _cccc_oooo_mmmm_pppp_llll_eeee_xxxx        _aaaa_rrrr_gggg_2222_;;;;
  20.                _cccc_oooo_mmmm_pppp_llll_eeee_xxxx        _rrrr_eeee_tttt_vvvv_aaaa_llll_;;;;
  21.  
  22.      _pppp_uuuu_bbbb_llll_iiii_cccc_::::
  23.  
  24.                _cccc______eeee_xxxx_cccc_eeee_pppp_tttt_iiii_oooo_nnnn_(((( _cccc_hhhh_aaaa_rrrr _****_nnnn_,,,, _cccc_oooo_nnnn_ssss_tttt _cccc_oooo_mmmm_pppp_llll_eeee_xxxx_&&&& _aaaa_1111_,,,, _cccc_oooo_nnnn_ssss_tttt _cccc_oooo_mmmm_pppp_llll_eeee_xxxx_&&&& _aaaa_2222 _==== _cccc_oooo_mmmm_pppp_llll_eeee_xxxx______zzzz_eeee_rrrr_oooo _))))_;;;;
  25.  
  26.                _ffff_rrrr_iiii_eeee_nnnn_dddd _iiii_nnnn_tttt     _cccc_oooo_mmmm_pppp_llll_eeee_xxxx______eeee_rrrr_rrrr_oooo_rrrr_(((( _cccc______eeee_xxxx_cccc_eeee_pppp_tttt_iiii_oooo_nnnn_&&&& _))))_;;;;
  27.  
  28.                _ffff_rrrr_iiii_eeee_nnnn_dddd _cccc_oooo_mmmm_pppp_llll_eeee_xxxx _eeee_xxxx_pppp_(((( _cccc_oooo_mmmm_pppp_llll_eeee_xxxx _))))_;;;;
  29.                _ffff_rrrr_iiii_eeee_nnnn_dddd _cccc_oooo_mmmm_pppp_llll_eeee_xxxx _ssss_iiii_nnnn_hhhh_(((( _cccc_oooo_mmmm_pppp_llll_eeee_xxxx _))))_;;;;
  30.                _ffff_rrrr_iiii_eeee_nnnn_dddd _cccc_oooo_mmmm_pppp_llll_eeee_xxxx _cccc_oooo_ssss_hhhh_(((( _cccc_oooo_mmmm_pppp_llll_eeee_xxxx _))))_;;;;
  31.                _ffff_rrrr_iiii_eeee_nnnn_dddd _cccc_oooo_mmmm_pppp_llll_eeee_xxxx _llll_oooo_gggg_(((( _cccc_oooo_mmmm_pppp_llll_eeee_xxxx _))))_;;;;
  32.      _}}}}_;;;;
  33.  
  34. DDDDEEEESSSSCCCCRRRRIIIIPPPPTTTTIIIIOOOONNNN
  35.      In the following description of the _cccc_oooo_mmmm_pppp_llll_eeee_xxxx error handling routine,
  36.       - _i is of type _iiii_nnnn_tttt and
  37.       - _x is of type _cccc______eeee_xxxx_cccc_eeee_pppp_tttt_iiii_oooo_nnnn.
  38.  
  39.      _i _==== _cccc_oooo_mmmm_pppp_llll_eeee_xxxx______eeee_rrrr_rrrr_oooo_rrrr_((((_x_))))     Invoked by functions in the C++ Complex
  40.                               Mathematics Library when errors are detected.
  41.  
  42.      Users may define their own procedures for handling errors, by defining a
  43.      function named _cccc_oooo_mmmm_pppp_llll_eeee_xxxx______eeee_rrrr_rrrr_oooo_rrrr in their programs.  _cccc_oooo_mmmm_pppp_llll_eeee_xxxx______eeee_rrrr_rrrr_oooo_rrrr must be of
  44.      the form described above.
  45.  
  46.      The element _tttt_yyyy_pppp_eeee is an integer describing the type of error that has
  47.      occurred, from the following list of constants (defined in the header
  48.      file):
  49.  
  50.           _SSSS_IIII_NNNN_GGGG      argument singularity
  51.           _OOOO_VVVV_EEEE_RRRR_FFFF_LLLL_OOOO_WWWW  overflow range error
  52.           _UUUU_NNNN_DDDD_EEEE_RRRR_FFFF_LLLL_OOOO_WWWW underflow range error
  53.  
  54.      The element _nnnn_aaaa_mmmm_eeee points to a string containing the name of the function
  55.      that incurred the error.  The variables _aaaa_rrrr_gggg_1111 and _aaaa_rrrr_gggg_2222 are the arguments
  56.      with which the function was invoked.  _rrrr_eeee_tttt_vvvv_aaaa_llll is set to the default value
  57.      that will be returned by the function unless the user's _cccc_oooo_mmmm_pppp_llll_eeee_xxxx______eeee_rrrr_rrrr_oooo_rrrr
  58.      sets it to a different value.
  59.  
  60.  
  61.  
  62.  
  63.                                                                         PPPPaaaaggggeeee 1111
  64.  
  65.  
  66.  
  67.  
  68.  
  69.  
  70. CCCCPPPPLLLLXXXXEEEERRRRRRRR((((3333CCCC++++++++))))                                                    CCCCPPPPLLLLXXXXEEEERRRRRRRR((((3333CCCC++++++++))))
  71.  
  72.  
  73.  
  74.      If the user's _cccc_oooo_mmmm_pppp_llll_eeee_xxxx______eeee_rrrr_rrrr_oooo_rrrr function returns non-zero, no error message
  75.      will be printed, and _e_r_r_n_o will not be set.
  76.  
  77.      If _cccc_oooo_mmmm_pppp_llll_eeee_xxxx______eeee_rrrr_rrrr_oooo_rrrr is not supplied by the user, the default error-handling
  78.      procedures, described with the complex math functions involved, will be
  79.      invoked upon error.  These procedures are also summarized in the table
  80.      below.  In every case, _e_r_r_n_o is set to _EEEE_DDDD_OOOO_MMMM or _EEEE_RRRR_AAAA_NNNN_GGGG_EEEE and the program
  81.      continues.
  82.  
  83.      Note that complex math functions call functions included in the math
  84.      library which has its own error handling routine, _mmmm_aaaa_tttt_hhhh_eeee_rrrr_rrrr(3M).  Users may
  85.      also override this routine by supplying their own version.
  86.  
  87.          ____________________________________________________________
  88.                       DDDDEEEEFFFFAAAAUUUULLLLTTTT EEEERRRRRRRROOOORRRR HHHHAAAANNNNDDDDLLLLIIIINNNNGGGG PPPPRRRROOOOCCCCEEEEDDDDUUUURRRREEEESSSS
  89.          ____________________________________________________________
  90.          ____________________________________________________________
  91.                                            _T_y_p_e_s _o_f _E_r_r_o_r_s
  92.          ____________________________________________________________
  93.          ____________________________________________________________
  94.                   _tttt_yyyy_pppp_eeee               _SSSS_IIII_NNNN_GGGG      _OOOO_VVVV_EEEE_RRRR_FFFF_LLLL_OOOO_WWWW    _UUUU_NNNN_DDDD_EEEE_RRRR_FFFF_LLLL_OOOO_WWWW
  95.          ____________________________________________________________
  96.          ____________________________________________________________
  97.                   _e_r_r_n_o              _EEEE_DDDD_OOOO_MMMM       _EEEE_RRRR_AAAA_NNNN_GGGG_EEEE      _EEEE_RRRR_AAAA_NNNN_GGGG_EEEE
  98.          ____________________________________________________________
  99.          ____________________________________________________________
  100.           _EEEE_XXXX_PPPP:
  101.          ____________________________________________________________
  102.            real too large/small       -        (+_H, +_H)     (0, 0)
  103.          ____________________________________________________________
  104.            imag too large             -         (0, 0)         -
  105.          ____________________________________________________________
  106.          ____________________________________________________________
  107.           _LLLL_OOOO_GGGG:
  108.          ____________________________________________________________
  109.            arg = (0, 0)           M, (H, 0)        -           -
  110.          ____________________________________________________________
  111.          ____________________________________________________________
  112.           _SSSS_IIII_NNNN_HHHH:
  113.          ____________________________________________________________
  114.            real too large             -        (+_H, +_H)        -
  115.          ____________________________________________________________
  116.            imag too large             -         (0, 0)         -
  117.          ____________________________________________________________
  118.          ____________________________________________________________
  119.           _CCCC_OOOO_SSSS_HHHH:
  120.          ____________________________________________________________
  121.            real too large             -        (+_H, +_H)        -
  122.          ____________________________________________________________
  123.            imag too large             -         (0, 0)         -
  124.          ____________________________________________________________
  125.          |||||||||||||||||||||||||||||||||||||
  126.  
  127.  
  128.  
  129.  
  130.  
  131.  
  132.  
  133.  
  134.  
  135.  
  136.  
  137.  
  138.  
  139.  
  140.  
  141.  
  142.  
  143.  
  144.  
  145.  
  146.  
  147.  
  148.  
  149.  
  150.  
  151.  
  152.  
  153.  
  154.  
  155.  
  156.  
  157.  
  158.  
  159.  
  160.  
  161.                                 ||||||||||||||||||||||||||||||||||||
  162.  
  163.  
  164.  
  165.  
  166.  
  167.  
  168.  
  169.  
  170.  
  171.  
  172.  
  173.  
  174.  
  175.  
  176.  
  177.  
  178.  
  179.  
  180.  
  181.  
  182.  
  183.  
  184.  
  185.  
  186.  
  187.  
  188.  
  189.  
  190.  
  191.  
  192.  
  193.  
  194.  
  195.                                              |||||||||||||||||||||||||||||||||
  196.  
  197.  
  198.  
  199.  
  200.  
  201.  
  202.  
  203.  
  204.  
  205.  
  206.  
  207.  
  208.  
  209.  
  210.  
  211.  
  212.  
  213.  
  214.  
  215.  
  216.  
  217.  
  218.  
  219.  
  220.  
  221.  
  222.  
  223.  
  224.  
  225.  
  226.                                                          |||||||||||||||||||||||||||||||||
  227.  
  228.  
  229.  
  230.  
  231.  
  232.  
  233.  
  234.  
  235.  
  236.  
  237.  
  238.  
  239.  
  240.  
  241.  
  242.  
  243.  
  244.  
  245.  
  246.  
  247.  
  248.  
  249.  
  250.  
  251.  
  252.  
  253.  
  254.  
  255.  
  256.  
  257.                                                                      |||||||||||||||||||||||||||||||||||||
  258.  
  259.  
  260.  
  261.  
  262.  
  263.  
  264.  
  265.  
  266.  
  267.  
  268.  
  269.  
  270.  
  271.  
  272.  
  273.  
  274.  
  275.  
  276.  
  277.  
  278.  
  279.  
  280.  
  281.  
  282.  
  283.  
  284.  
  285.  
  286.  
  287.  
  288.  
  289.  
  290.  
  291.  
  292.  
  293.  
  294.  
  295.  
  296.  
  297.  
  298.                                                                         PPPPaaaaggggeeee 2222
  299.  
  300.  
  301.  
  302.  
  303.  
  304.  
  305. CCCCPPPPLLLLXXXXEEEERRRRRRRR((((3333CCCC++++++++))))                                                    CCCCPPPPLLLLXXXXEEEERRRRRRRR((((3333CCCC++++++++))))
  306.  
  307.  
  308.  
  309.         _____________________________________________________________
  310.          |
  311.                                 |
  312.                                              |
  313.                                                          |
  314.                                                                      |
  315.  
  316.      ______________________________________________
  317.                      AAAABBBBBBBBRRRREEEEVVVVIIIIAAAATTTTIIIIOOOONNNNSSSS
  318.           M       Message is printed (_EEEE_DDDD_OOOO_MMMM error).
  319.         (H, 0)    (_HHHH_UUUU_GGGG_EEEE, 0) is returned.
  320.        (+_H, +_H)   (+__HHHH_UUUU_GGGG_EEEE, +__HHHH_UUUU_GGGG_EEEE) is returned.
  321.         (0, 0)    (0, 0) is returned.
  322.      ______________________________________________
  323.      ||||||
  324.  
  325.  
  326.  
  327.  
  328.                                                    ||||||
  329.  
  330.  
  331.  
  332.  
  333.  
  334.  
  335. SSSSEEEEEEEE AAAALLLLSSSSOOOO
  336.      _cccc_oooo_mmmm_pppp_llll_eeee_xxxx(3C++), _mmmm_aaaa_tttt_hhhh_eeee_rrrr_rrrr(3M), _cccc_aaaa_rrrr_tttt_pppp_oooo_llll(3C++), _cccc_pppp_llll_xxxx_oooo_pppp_ssss(3C++), _cccc_pppp_llll_xxxx_eeee_xxxx_pppp(3C++),
  337.      and _cccc_pppp_llll_xxxx_tttt_rrrr_iiii_gggg(3C++).
  338.  
  339.  
  340.  
  341.  
  342.  
  343.  
  344.  
  345.  
  346.  
  347.  
  348.  
  349.  
  350.  
  351.  
  352.  
  353.  
  354.  
  355.  
  356.  
  357.  
  358.  
  359.  
  360.  
  361.  
  362.  
  363.  
  364.  
  365.  
  366.  
  367.  
  368.  
  369.  
  370.  
  371.  
  372.  
  373.  
  374.  
  375.  
  376.  
  377.  
  378.  
  379.  
  380.                                                                         PPPPaaaaggggeeee 3333
  381.  
  382.  
  383.  
  384.